package ai.people.netmon.framework.domain.facebook.probe.entity;

import com.alibaba.fastjson.annotation.JSONField;
import com.alibaba.fastjson.serializer.ToStringSerializer;
import com.baomidou.mybatisplus.annotation.TableName;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.NoArgsConstructor;

import java.io.Serializable;
import java.time.OffsetDateTime;

/**
 *
 * 探测-facebook实体
 *
 *
 * @author zhenglin
 * @since 2022-03-11
 */
@Data
@EqualsAndHashCode(callSuper = false)
@TableName(schema = "cfg_facebook",value = "account")
@NoArgsConstructor
public class FacebookAccount implements Serializable {

    private static final long serialVersionUID = 1L;

    /**
     * 主键id
     */
    @JSONField(serializeUsing = ToStringSerializer.class)
    private Long id;
    /**
     * 账号名
     */
    private String accountName;

    /**
     * 账号链接
     */
    private String accountLink;

    /**
     * 国家代码
     */
    private String countryCode;

    /**
     * 城市代码
     */
    private String cityCode;

    /**
     * 语种代码
     */
    private String languageCode;

    /**
     * 有效性
     */
    private String validity;

    /**
     * 重要度
     */
    private String importanceDeg;

    /**
     * 采集状态
     */
    private String collectionStatus;

    /**
     * 信源账号状态
     */
    private String accountStatus;

    /**
     * 采集频率
     */
    private String collectionFrequency;
    /**
     * 业务类型
     */
    private String businessType;

    /**
     * 创建时间
     */
    @JSONField(format = "yyyy-MM-dd HH:mm:ss")
    private OffsetDateTime createTime;

    /**
     * 修改时间
     */
    @JSONField(format = "yyyy-MM-dd HH:mm:ss")
    private OffsetDateTime updateTime;


    public FacebookAccount(String accountName, String accountLink, String importanceDeg) {
        this.accountName = accountName;
        this.accountLink = accountLink;
        this.importanceDeg = importanceDeg;
    }
}
